package com.ruoyi.business.service;

import java.util.List;
import com.ruoyi.business.domain.TDevice;

/**
 * 设备管理Service接口
 * 
 * @author laoguo
 * @date 2025-08-12
 */
public interface ITDeviceService 
{
    /**
     * 查询设备管理
     * 
     * @param deviceId 设备管理主键
     * @return 设备管理
     */
    public TDevice selectTDeviceByDeviceId(Long deviceId);

    /**
     * 查询设备管理列表
     * 
     * @param tDevice 设备管理
     * @return 设备管理集合
     */
    public List<TDevice> selectTDeviceList(TDevice tDevice);

    /**
     * 新增设备管理
     * 
     * @param tDevice 设备管理
     * @return 结果
     */
    public int insertTDevice(TDevice tDevice);

    /**
     * 修改设备管理
     * 
     * @param tDevice 设备管理
     * @return 结果
     */
    public int updateTDevice(TDevice tDevice);

    /**
     * 批量删除设备管理
     * 
     * @param deviceIds 需要删除的设备管理主键集合
     * @return 结果
     */
    public int deleteTDeviceByDeviceIds(Long[] deviceIds);

    /**
     * 删除设备管理信息
     * 
     * @param deviceId 设备管理主键
     * @return 结果
     */
    public int deleteTDeviceByDeviceId(Long deviceId);

    /**
     * 根据用户经纬度查找附近的设备
     * @param longitude 用户当前经度
     * @param latitude  用户当前纬度
     * @return 附近的设备列表（已按距离排序）
     */
    List<TDevice> findNearbyDevices(Double longitude, Double latitude);
}
